package net.yla.smartbus.module.ba.dept.service;

import com.alibaba.fastjson.JSONObject;
import net.yla.smartbus.core.base.PageBean;
import net.yla.smartbus.module.ba.dept.dto.DeptDto;
import net.yla.smartbus.module.ba.dept.dto.EmpInfoDTO;
import net.yla.smartbus.module.ba.dept.form.DeptForm;
import net.yla.smartbus.module.ba.dept.query.DeptEmpQuery;
import net.yla.smartbus.module.ba.dept.query.DeptQuery;

import java.util.List;

/**
 * @description:
 * @author: Yee
 * @date: 2021/6/17 14:44
 */
public interface DeptService {
    /**
     * 查询部门
     * @param query
     * @return
     */
    PageBean<DeptDto> listDeptInfo(DeptQuery query);

    int deleteDept(DeptQuery query);

    int addDept(DeptForm form);

    int update(DeptForm form);

    /**
     * 查询所有人员信息
     * @return
     */
    List<EmpInfoDTO> listEmpInfo(DeptEmpQuery query);

    /**
     *查询部门已拥有的人员
     * @param deptId
     * @return
     */
    List<Integer> listHavePeople(Integer deptId);

    List<JSONObject> departments(String token);
}
